package cn.com.yiqi.wsc.service.subject;

import cn.com.yiqi.wsc.common.Result;
import cn.com.yiqi.wsc.dao.subject.criteria.SubjectCriteria;
import cn.com.yiqi.wsc.entity.shop.AppBannerDTO;
import cn.com.yiqi.wsc.entity.subject.AdminSubjectDTO;

/**
 * @author 何刚
 * @ClassName: ${class}
 * @Description: TODO
 * @date 2017/3/13
 */
public interface AdminSubjectService {

    /**
     * 添加
     *
     * @param subjectDTO
     * @param userId
     * @return
     */
    Result insert(AdminSubjectDTO subjectDTO, Integer userId);

    /**
     * 修改
     *
     * @param subjectDTO
     * @param userId
     * @return
     */
    Result update(AdminSubjectDTO subjectDTO, Integer userId);

    /**
     * @return
     */
    Result detail(SubjectCriteria criteria);

    /**
     * 删除
     *
     * @param subjectDTO
     * @return
     */
    Result delete(AdminSubjectDTO subjectDTO, Integer userId);

    /**
     * 分页查询
     *
     * @param criteria
     * @return
     */
    Result pageList(SubjectCriteria criteria);

    /**
     * 显示
     *
     * @param subjectDTO
     * @return
     */
    Result enable(AdminSubjectDTO subjectDTO, Integer userId);

    /**
     * 隐藏
     *
     * @param subjectDTO
     * @return
     */
    Result disable(AdminSubjectDTO subjectDTO, Integer userId);


    /**
     * 修改sort,行锁
     *
     * @param bigId
     * @return
     */
    Result changeSort(Integer bigId);


    /**
     * 根据排序获取ID
     *
     * @param bigId
     * @param smallId
     * @return
     */
    Integer getIdBySort(Integer bigId, Integer smallId);

}
